package com.car.service;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.car.entity.Car;
import com.car.entity.CarCustom;
import com.car.entity.CarExample;
import com.car.entity.CarSeach;

public interface CarManagerService {
	/**
	 * 获取符合条件的结果集数量
	 * @param carSeach
	 * @return
	 */
	Integer countByCarSeach(CarSeach carSeach);
	/**
	 * 根据条件分页查询数据
	 * @param carSeach
	 * @return
	 */
	List<CarCustom> selectByExamplewithPage(CarSeach carSeach);
	/**
	 * 根据条件获取结果的数量
	 * @param example
	 * @return
	 */
    int countByExample(CarExample example);

    /**
     * 根据条件删除相应的结果集
     * @param example
     * @return
     */
    int deleteByExample(CarExample example);

    /**
     * 根据id删除指定的结果条目
     * @param id
     * @return
     */
    int deleteByPrimaryKey(Integer id);

    /**
     * 添加新的条目
     * @param record
     * @return
     */
    int insert(Car record);

    int insertSelective(Car record);

    /**
     * 根据条件获取指定的结果集
     * @param example
     * @return
     */
    List<Car> selectByExample(CarExample example);

    /**
     * 根据id获取指定的条目
     * @param id
     * @return
     */
    Car selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") Car record, @Param("example") CarExample example);

    int updateByExample(@Param("record") Car record, @Param("example") CarExample example);

    /**
     * 根据id修改指定条目的信息，输入为null的字段不做改动
     * @param record
     * @return
     */
    int updateByPrimaryKeySelective(Car record);

    int updateByPrimaryKey(Car record);

}
